Batch Write এবং Batch Read অপারেশন

Database Tutorials - ডাইনামোডিবি (DynamoDB) DynamoDB এ Data Operations |
206
206

Batch Write এবং Batch Read অপারেশনগুলি DynamoDB-তে একাধিক রেকর্ড একসঙ্গে প্রক্রিয়া করার জন্য ব্যবহার করা হয়, যা পারফরম্যান্স এবং স্কেলেবিলিটি উন্নত করতে সাহায্য করে। এই অপারেশনগুলি আপনাকে একসাথে একাধিক ডেটা লিখতে এবং পড়তে অনুমতি দেয়, যার ফলে ডেটাবেসে অনেকগুলো রেকর্ড হ্যান্ডেল করার সময় দক্ষতা বাড়ে।

1. Batch Write অপারেশন

DynamoDB-তে Batch Write অপারেশন ব্যবহার করে আপনি একাধিক PutItem বা DeleteItem রেকর্ড একসাথে করতে পারেন। Batch Write অপারেশন 25টি পর্যন্ত একসঙ্গে রেকর্ড লেখার (Put) বা মুছে ফেলার (Delete) অনুমতি দেয়।

Batch Write অপারেশনের সিনট্যাক্স

Batch Write অপারেশনটি দুইটি মূল অংশে বিভক্ত:

  • PutRequest: নতুন আইটেম লিখতে।
  • DeleteRequest: বিদ্যমান আইটেম মুছে ফেলতে।
Python (Boto3) উদাহরণ: Batch Write
import boto3

# DynamoDB রিসোর্স তৈরি করা
dynamodb = boto3.resource('dynamodb', region_name='us-west-2')
table = dynamodb.Table('Movies')

# একাধিক আইটেম লেখা
with table.batch_writer() as batch:
    batch.put_item(
        Item={
            'Year': 2024,
            'Title': 'New Movie',
            'Genre': 'Action'
        }
    )
    batch.put_item(
        Item={
            'Year': 2023,
            'Title': 'Another Movie',
            'Genre': 'Drama'
        }
    )

    # একাধিক আইটেম মুছে ফেলা
    batch.delete_item(
        Key={
            'Year': 2020,
            'Title': 'Old Movie'
        }
    )
Batch Write এর সুবিধা:
  • একাধিক ডেটা একযোগে লেখার ফলে অপারেশনটি অনেক দ্রুত সম্পন্ন হয়।
  • PutItem এবং DeleteItem একসাথে করা যায়।
  • প্রতিটি ব্যাচে সর্বোচ্চ 25টি আইটেম প্রক্রিয়া করা যেতে পারে।

2. Batch Read অপারেশন

Batch Read অপারেশন ব্যবহার করে আপনি একাধিক আইটেম একসাথে পড়তে পারেন। এটি BatchGetItem API ব্যবহার করে, যেখানে আপনি একাধিক টেবিলের মধ্যে একাধিক রেকর্ড অনুরোধ করতে পারেন।

Batch Read অপারেশনের সিনট্যাক্স

Batch Read অপারেশনটি একাধিক GetItem রিকোয়েস্টের মাধ্যমে ডেটা একসঙ্গে পড়ে।

Python (Boto3) উদাহরণ: Batch Read
import boto3

# DynamoDB রিসোর্স তৈরি করা
dynamodb = boto3.resource('dynamodb', region_name='us-west-2')
table = dynamodb.Table('Movies')

# একাধিক আইটেম পড়া
response = table.batch_get_item(
    RequestItems={
        'Movies': {
            'Keys': [
                {'Year': 2024, 'Title': 'New Movie'},
                {'Year': 2023, 'Title': 'Another Movie'}
            ]
        }
    }
)

# রেসপন্স থেকে আইটেমগুলি বের করা
items = response['Responses']['Movies']
for item in items:
    print(item)
Batch Read এর সুবিধা:
  • একাধিক আইটেম একসাথে পড়ার ফলে একাধিক GetItem রিকোয়েস্টের সংখ্যা কমানো যায়।
  • একে ডিস্ট্রিবিউটেড সিস্টেমের জন্য আদর্শ যেখানে একাধিক রেকর্ড একসঙ্গে অ্যাক্সেস করা প্রয়োজন।

Batch Write এবং Batch Read অপারেশন ব্যবহারের সুবিধা

  • পারফরম্যান্স উন্নতি: একাধিক আইটেম একসাথে প্রক্রিয়া করা, কম নেটওয়ার্ক রিকোয়েস্ট তৈরি হওয়ার কারণে দ্রুত অপারেশন সম্পন্ন হয়।
  • দক্ষতা: একটি ব্যাচ অপারেশনে একাধিক রেকর্ড লেখার/পড়ার ফলে সার্ভারের উপর লোড কমে এবং মোট আউটপুট দ্রুত হয়।
  • স্কেলেবিলিটি: বড় ডেটাসেটে কাজ করার সময় ব্যাচ অপারেশন স্কেলিং উন্নত করে।

সীমাবদ্ধতা

  • Batch Write-এ সর্বাধিক 25টি রেকর্ড একসঙ্গে অন্তর্ভুক্ত করা যায়।
  • Batch GetItem-এ সর্বাধিক 100 আইটেম একসঙ্গে পড়া সম্ভব, এবং এর মধ্যে প্রতিটি আইটেমের আকার 4MB-এর বেশি হতে পারবে না।

সারাংশ

  • Batch Write এবং Batch Read অপারেশনগুলি উচ্চ কর্মক্ষমতা এবং স্কেলেবিলিটি নিশ্চিত করতে সাহায্য করে, বিশেষত যখন একাধিক রেকর্ড একই সময়ে লেখা বা পড়া প্রয়োজন।
  • এগুলি DynamoDB এর পারফরম্যান্স অপটিমাইজেশনে গুরুত্বপূর্ণ ভূমিকা পালন করে, এবং ডেভেলপারদের জন্য সহজ ও দ্রুত ডেটা প্রক্রিয়াকরণের উপায় প্রদান করে।
common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion